# Example 1: Merging geometry data
SET(EXAMPLE_NAME cookbook_08_01)
SET(EXAMPLE_FILES ch08_01/merge_geom.cpp)
START_EXAMPLE()

# Example 2: Compressing textures
SET(EXAMPLE_NAME cookbook_08_02)
SET(EXAMPLE_FILES ch08_02/compress_texture.cpp)
START_EXAMPLE()

# Example 3: Sharing scene objects
SET(EXAMPLE_NAME cookbook_08_03)
SET(EXAMPLE_FILES ch08_03/share_objects.cpp)
START_EXAMPLE()

# Example 4: Configuring the database pager
SET(EXAMPLE_NAME cookbook_08_04)
SET(EXAMPLE_FILES ch08_04/config_pager.cpp)
START_EXAMPLE()

# Example 5: Designing simple culling strategy
SET(EXAMPLE_NAME cookbook_08_05)
SET(EXAMPLE_FILES ch08_05/main.cpp
                  ch08_05/MazeCullCallback.cpp
                  ch08_05/MazeCullCallback)
START_EXAMPLE()

# Example 6: Using occlusion query to cull objects
SET(EXAMPLE_NAME cookbook_08_06)
SET(EXAMPLE_FILES ch08_06/occlusion_query.cpp)
START_EXAMPLE()

# Example 7: Managing scene objects with the octree algorithm
SET(EXAMPLE_NAME cookbook_08_07)
SET(EXAMPLE_FILES ch08_07/main.cpp
                  ch08_07/OctreeBuilder.cpp
                  ch08_07/OctreeBuilder)
START_EXAMPLE()

# Example 8: Rendering point cloud data with draw instancing
SET(EXAMPLE_NAME cookbook_08_08)
SET(EXAMPLE_FILES ch08_08/render_points.cpp)
START_EXAMPLE()

# Example 9: Speeding up the scene intersections
SET(EXAMPLE_NAME cookbook_08_09)
SET(EXAMPLE_FILES ch08_09/intersection.cpp)
START_EXAMPLE()
